Electronic information is stored for many different applications and for a large number of users. Such information should be easily accessible and is often stored in one or more backup copies. With cloud storage and data center usage on the rise, there is more focus on the communication with the storage devices.
As data storage needs increase, there is an increasing role for the framework surrounding communication with storage systems. For example, NVM Express (Non-Volatile Memory Express, or NVMe) is a standard that runs over PCIe (Peripheral Component Interconnect Express) and is used to communicate with fast block I/O devices, such as solid state hard drives (SSDs).
There is a trend within the storage industry towards “in-situ” processing, or processing data on the SSD rather than having to transfer it to a central processing unit (CPU) for processing. In addition, there is a trend towards new host-interfaces such as IBM Coherent Application Processing Interface (CAPI), which are not compatible with NVMe.
Improvements in command processing for fast block I/O devices are desirable.